|
|
|
|
|
|
|
used to copy data back into the RasEntryBuffer array. The final program looks like this: |
|
|
|
|
|
|
|
|
' RasTest #1
' Copyright © 1998 by Desaware Inc. All Rights Reserved
Option Explicit
Private Declare Function RasEntryToMemBuffer Lib "kernel32" Alias _
"RtlMoveMemory" (dest As Byte, source As RASENTRYNAME, _
ByVal count As Long) As Long
Private Declare Function RasEntryFromMemBuffer Lib "kernel32" _
Alias "RtlMoveMemory" (dest As RASENTRYNAME, source As Byte, _
ByVal count As Long) As Long
Private Sub Form_Load()
Dim BufferSize As Long
Dim RasEntries As Long
Dim RasEntryBuffer() As RASENTRYNAME
Dim RasEntrySize As Long
Dim Res As Long
Dim CurrentEntry As Integer
Dim RasEntryCount As Long
Dim TransferBuffer() As Byte
ReDim RasEntryBuffer(0)
RasEntrySize = Len(RasEntryBuffer(0))
RasEntryBuffer(0).dwSize = RasEntrySize
Res = RasEnumEntries(0, vbNullString, VarPtr(RasEntryBuffer(0)), _
BufferSize, RasEntries)
' Now, redo based on the number of entries
If (Res = 0 Or Res = 603) And BufferSize > 0 Then
RasEntryCount = BufferSize / RasEntrySize
ReDim RasEntryBuffer(RasEntryCount- 1 )
ReDim TransferBuffer(BufferSize)
For CurrentEntry = 0 To RasEntryCount - 1
RasEntryBuffer(CurrentEntry).dwSize = RasEntrySize
Call RasEntryToMemBuffer(TransferBuffer(CurrentEntry * _
RasEntrySize), RasEntryBuffer(CurrentEntry), RasEntrySize)
Next CurrentEntry
Res = RasEnumEntries(0, vbNullString, VarPtr(TransferBuffer(0)), _ |
|
|
|
|
|